﻿using GalaSoft.MvvmLight.Messaging;

namespace Dsl.Ped.Desktop.ModuleControllers
{
    /// <summary>
    /// Interface that must be implemented by any controller in the applicatoin
    /// </summary>
    public interface IModuleController
    {
        /// <summary>
        /// Start the controller over the given <see cref="Messenger"/>
        /// </summary>
        /// <param name="messenger">Messenger used by the controller for the communication with another application parts</param>
        void Start(Messenger messenger);

        /// <summary>
        /// Stop the controller (Listening to messages sent by instantiated <see cref="Messenger"/>
        /// </summary>
        void Stop();
    }
}
